package com.openweixin.sheknows.service;
import java.util.List;

import com.openweixin.sheknows.common.Pager;
import com.openweixin.sheknows.domain.Question;
/**
 * @author linxiaohui
 *
 */
public interface QuestionService extends BaseService<Question, Integer> {
	
	 /**根据用户获取问题列表
	 * @param pager
	 * @param uID  用户ID
	 * @return
	 */
	Pager<Question> findQuestionPagerByUser(Pager<Question> pager,Integer uID);
	
	/**获取所有问题列表
	 * @param pager
	 * @return
	 */
	Pager<Question> findQuestionPager(Pager<Question> pager);
	
	/**专家获取所有问题列表
	 * @param pager
	 * @return
	 */
	Pager<Question> findQuestionPagerByExtpert(Pager<Question> pager,Integer extpertID);
	
	/**专家获取我锁定的问题列表
	 * @param extpertID
	 * @return
	 */
	List<Question> findLockQuestionByExtpert(Integer extpertID);
	
	/**专家锁定问题( (防止一个问题多个专家解答) )
	 * @param q
	 * @param extpertID
	 * @return
	 */
	boolean lockQuestionByExtpert(Integer q,Integer extpertID);
	
	/**专家解锁问题( (防止一个问题多个专家解答) )
	 * @param q
	 * @param extpertID
	 * @return
	 */
	boolean unlockQuestionByExtpert(Integer q,Integer extpertID);

	/**获取问题
	 * @param id
	 * @return
	 */
	Question findQuestionById(Integer id);
	
	
	/**查看问题(更新状态为已读(前提是以解决状态))
	 * @param id
	 * @return
	 */
	Question readQuestionById(Integer id);

	/**重新提交问题
	 * @param id
	 * @param uID
	 * @return
	 */
	boolean reSubmit(Integer id, Integer uID);
}
